import {
  NAutoComplete,
  NCascader,
  NColorPicker,
  NDatePicker,
  NDynamicInput,
  NDynamicTags,
  NInput,
  NInputNumber,
  NMention,
  NRate,
  NSelect,
  NSlider,
  NSwitch,
  NTimePicker,
  NTreeSelect,
} from 'naive-ui';
import Checkbox from '../../components/Checkbox.vue';
import Radio from '../../components/Radio.vue';
import DatePicker from '../../components/DatePicker.vue';

const NaiveFormItems = {
  Input: NInput,
  Select: NSelect,
  AutoComplete: NAutoComplete,
  Cascader: NCascader,
  ColorPicker: NColorPicker,
  DatePicker: DatePicker,
  TimePicker: NTimePicker,
  DynamicInput: NDynamicInput,
  DynamicTags: NDynamicTags,
  InputNumber: NInputNumber,
  Mention: NMention,
  Rate: NRate,
  Slider: NSlider,
  Switch: NSwitch,
  TreeSelect: NTreeSelect,
  Checkbox,
  Radio,
};

export default NaiveFormItems;
export type FormItemKeys = keyof typeof NaiveFormItems;
